#region Header
//=============================================================================
//                          GShield (Game Shield)
//=============================================================================
//
// Original Programmer: Shawn Jackson
// Company: WaveTech Digital Technologies, Inc. (www.wtdt.com)
// Copyright: (c) 2006 WaveTech Digital Technologies, Inc. All Rights Reserved.
// Assembly: WebService
// Code File Name: GShieldAdvisorService.cs
// Code File Date: 10/22/2006
//
// Code File Info: Codebehind for the GShieldAdvisorService WebService
//=============================================================================
/*
 * UPDATES
 * -------
 *		ShawnJ 8/6/2007 (0.9.5.x): Added overloads for the Trim Non-Exact Ratings Results code path
 */
#endregion Header

#region License
/*
  GShield - Game Shield
  Copyright (C) 2006-2007 WaveTech Digital Technologies, Inc.
                                http://www.wtdt.com

  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation; either version 2 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
*/
#endregion License

#region Includes
using System.Web.Services;
using WaveTech.GShield.Engine.Managers;
using WaveTech.GShield.Library.Objects;
#endregion Includes

[WebService(Namespace = "http://www.wtdt.com/gshieldadvisor/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class GShieldAdvisorService : WebService
{
	#region Private Members
	private ESRBManager m_ESRBManager;
	#endregion Private Memberrs

	#region Constructor
	public GShieldAdvisorService()
	{
		m_ESRBManager = new ESRBManager();
	}
	#endregion Constructor

	#region Get ESRB Rating
	[WebMethod]
	public int? GetESRBRating(string title, string publisher, string fileName, string directoryName, string productName)
	{
		return m_ESRBManager.GetESRBRating(title, publisher, fileName, directoryName, productName);
	}

	[WebMethod]
	public int? GetESRBRatingEx(string title, string publisher, string fileName, string directoryName, string productName, bool trimResults)
	{
		return m_ESRBManager.GetESRBRating(title, publisher, fileName, directoryName, productName, trimResults);
	}
	#endregion Get ESRB Rating

	#region Get ESRB Game Detail
	[WebMethod]
	public GameRatingDetail GetESRBGameDetail(string title, string publisher, string fileName, string directoryName, string productName)
	{
		return m_ESRBManager.GetESRBGameDetail(title, publisher, fileName, directoryName, productName);
	}

	[WebMethod]
	public GameRatingDetail GetESRBGameDetailEx(string title, string publisher, string fileName, string directoryName, string productName, bool trimResults)
	{
		return m_ESRBManager.GetESRBGameDetail(title, publisher, fileName, directoryName, productName, trimResults);
	}
	#endregion Get ESRB Game Detail
}